<template>
  <!-- 我们不知道什么时候能够拿到max值，但是，总归有一刻，会得到一个真正的max值 -->
  <!-- 我们可以使用watch属性监听父组件传递过来的max值，不管 watch会被触发几次
   但是，最后一次，肯定是一个合法的max数值 -->
  <div class="mui-numbox" data-numbox-min='1' data-numbox-max='max'>
    <button class="mui-btn mui-btn-numbox-minus" type="button">-</button>
    <input id="test" class="mui-input-numbox" type="number" value="1" ref="numbox" @change="countChanged"/>
    <button class="mui-btn mui-btn-numbox-plus" type="button">+</button>
  </div>
  <!-- 分析，子组件什么时候把数据传递给父组件 -->
</template>
<script>
import mui from '../../lib/mui/js/mui.min.js'
export default {
  props:['max'],
  watch:{
    //属性监听
    'max':function(newVal,oldVal){
      //使用JS API设置 numbox的最大值
      mui('.mui-numbox').numbox().setOption('max',newVal)
    }
  },
  mounted(){
    //初始化数字选择框组件
    mui('.mui-numbox').numbox()
  },
  methods:{
    //每当文本框的数据被修改的时候，立即把最新的数据，通过事件调用机制，传递给父组件
    countChanged(){
      //console.log(this.$refs.numbox.value)
      this.$emit('getcount', parseInt(this.$refs.numbox.value))
    }
  }
}
</script>
<style lang="scss" scoped>

</style>


